#include "DataStructure/Result/ElementalStrain/HEXAStrainData.h"

#include "DataStructure/Common/Validation.h"

using namespace SG::DataStructure::Post;

bool SG::DataStructure::Post::operator== (const HEXAStrainData& val1, const HEXAStrainData& val2)
{
    FIELD_COMPARE (m_eId)
    FIELD_COMPARE (m_CID)
    FIELD_COMPARE_ARR (m_CTYPE, 4)
    FIELD_COMPARE (m_NODEF)
    FIELD_COMPARE_ARR (m_GRID, 9)
    FIELD_COMPARE_ARR (m_X, 9)
    FIELD_COMPARE_ARR (m_Y, 9)
    FIELD_COMPARE_ARR (m_Z, 9)
    FIELD_COMPARE_ARR (m_TXY, 9)
    FIELD_COMPARE_ARR (m_TYZ, 9)
    FIELD_COMPARE_ARR (m_TZX, 9)
    FIELD_COMPARE (m_domainId)  // NOLINT(readability-simplify-boolean-expr)
    return true;
}

bool SG::DataStructure::Post::operator< (const HEXAStrainData& a, const HEXAStrainData& b)
{
    return a.m_eId < b.m_eId;
}
